* NV6123_COMPLETE
*$
****************************************************************************
*
* NV6123 LTspice Model
*
****************************************************************************
*
* This simulation model uses typical parameter values and it is based on
* a behavioral model. This model is supplied "as is" and the author
* provides no warranties, either expressed or implied, with respect
* to the operation and accuracy of the model within a customer circuit
* or system.
*
****************************************************************************
*
* NAVITAS SEMICONDUCTOR
* Part Nr:	NV6123
* Author: 	Akos Hodany/T.Ribarich
* Date: 	6/1/2018
* Model Type: 	LTspice
* Model Version: v1.0a
*
* Revision notes:
*
* v1.0 - Initial version (source: NV6115 v1.4)
* v1.4a - Adjustments to IPK and RD0 for RDSON
*
* Notes on compatibility:
* This model is intentionally developed to work with different Spice simulator programs. However, due to differences between Spice variants and derivatives, compatibility issues may occur and call for minor changes in the subcircuit syntax.
* Please contact NAVITAS SEMICONDUCTOR for further assistance.
*
****************************************************************************
.SUBCKT NV6113 VCC PWM VDD DZ D S
R1 N003 N001 5k
C1 N002 N003 1n
C2 N002 N001 100p
R2 N002 VDD 300
G_B1 VCC DZ VALUE {max(500u*tanh((v(vcc,s)-v(dz,s)))*(0.65-0.35*tanh((v(dz,s)-5.6)*5)),0)}
R4 N001 VDD 10k
XU1 DZ N001 VCC N002 S S NV611x_OPA
R7 VCC DZ 300k
XU2 G PWM S VDD NV6113_DRV
C3 VDD S 10p
C5 PWM S 1p
XU3 D G S NV6113_FET
C4 DZ S 10p
R3 VCC S 25k
.ENDS nv6113
*$

.SUBCKT NV6113_FET D G S
.PARAM  Ipk=10.55 TCIPK=-0.000995261 Vpk0=2  dVpk=2  vpkalpha=0.7 P10=1 P1s=0.55 P1alpha=1 Alpha=0.35 TCA=0 TCVPK=+0.004 TCP1S=-0.00381818 VTHX=1.4 TCVTH=+0.00271 NORMTEMP=25 RD0=170m RG=370m TCRD=0.011 TCP10=-0.005 IDRo1=2.065 TCIDRc1=-0.00409091  Rs=1m IDRc1=2.2 IDRc2=1.5 C1=6 C2=0.6 C3=0.3 C4=79.11011 C5=13.0775 C6=32.59872 C7=44.4 C8=60
G_G3         D2 D0 VALUE { V(D2,D0)/max(V(RDT, 0),1n) }
E_ABM21         ILK 0 VALUE {  (abs(V(DTEMP))*V(DTEMP)/10+1)*2.93m*max(abs(V(D0,S0))*V(D0,S0)/42250,0)    }
R_R101         0 N153327  10Meg
E_ABM12         SUBTH 0 VALUE {  tanh(3*V(G0,S0))*(0.5*(1+tanh(2.2*(V(G0,S0)-V(VTHT)))))**2    }
G_G12         0 N165388 VALUE { 1n/1p*I(E_E102)/(V(cgd)+1m) }
C_C3         0 N164635  1n
E_ABM106         IDRVX 0 VALUE { V(IDRc1T)/(4*{IDRc2})+{IDRo1}    }
E_ABM22         CGS 0 VALUE { {C8}+ 0.5*({C7}- {C8})*(1+tanh(-1.5*(V(G0,S)-1.7)))    }
R_R2         D1 D3  0.1m
E_ABM24         CDS 0 VALUE { {C5} + 0.5*({C6}- {C5})*(1+tanh(-0.02*(V(D3,S)-120))) +  0.5*({C4}- {C6})*(1+tanh(-0.1*(V(D3,S)-50)))    }
C_C4         0 N165388  1n
E_ABM104         IDRC1T 0 VALUE { {IDRc1}*(1+V(DTEMP)*{TCIDRc1})    }
R_R105         0 N164635  10Meg
E_ABM2         DTEMP 0 VALUE { V(VTEMP)-{NORMTEMP}    }
L_L1         D D3  100p
E_ABM101         IDRI1 0 VALUE { max(0,(-V(D1,S0)-{IDRo1})*V(IDRc1T))    }
E_ABM9         PSI 0 VALUE { V(P1M)*V(VOVDRV)    }
R_R106         0 N165388  10Meg
E_ABM14         ALPHAT 0 VALUE { {Alpha}*(1+V(DTEMP)*{TCA})    }
R_R103         N164557 G0  100u
E_ABM23         CGD 0 VALUE { {C3} + 0.5*({C2}- {C3})*(1+tanh(-0.01*(V(D3,G0)-70))) + 0.5*({C1}- {C2})*(1+tanh(-0.1*(V(D3,G0)-20)))    }
G_G1         D0 S0 VALUE { V(ID, 0) }
E_ABM5         P10T 0 VALUE { {P10}*(1+V(DTEMP)*{TCP10})    }
E_E100         DX S VALUE { V(N153327, 0) }
E_ABM7         DP1T 0 VALUE { {P1S}*(1+V(DTEMP)*{TCP1S})-V(P10T)    }
E_ABM8         P1M 0 VALUE { V(P10T)+V(dP1T)*tanh({P1alpha}*abs(V(D0,S0)))    }
R_R6         D0 S0  150Meg
E_ABM11         VTHT 0 VALUE { {VTHX}*(1+V(DTEMP)*{TCVTH})    }
R_R104         N165310 G0  100u
C_C2         0 N153327  1n
E_ABM13         IPKT 0 VALUE { {IPK}*(1+V(DTEMP)*{TCIPK})    }
R_R9         D0 D2  100
E_ABM15         ID 0 VALUE {  V(IPKT)*(1+tanh(V(PSI)))*tanh(V(AlphaT)*V(D0,S0))*V(SUBTH)    }
E_ABM105         IDRO2 0 VALUE { -V(IDRc1T)/(4*{IDRc2})+{IDRo1}    }
E_E101         N164557 S VALUE { V(N164635, 0) }
R_R4         0 S  100Meg
E_ABM102         IDRI2 0 VALUE { (V(Vdsat)-V(IDRo2))*(V(Vdsat)-V(IDRo2))*{IDRc2}    }
R_R1         D3 D2  0.1m
R_R3         S S0  {Rs}
R_R5         G0 G  {RG}
E_E102         N165310 D3 VALUE { V(N165388, 0) }
E_ABM1         VTEMP 0 VALUE { {TEMP}    }
E_ABM3         VPK 0 VALUE { {Vpk0}+({dVpk}*tanh( {vpkalpha}*abs(V(D0,S0))))*(1+V(DTEMP)*{TCVPK})    }
R_R102         DX D3  100u
E_ABM16         RDT 0 VALUE { {RD0}*(1+V(DTEMP)*{TCRD})    }
R_R8         D D3  1
G_G100         D1 S0 VALUE { -max(V(IDRI1),V(IDRI2)) }
G_G6         D0 S0 VALUE { max(V(ILK, 0),0)*1u }
G_G10         0 N153327 VALUE { 1n/1p*I(E_E100)/(V(cds)+1m) }
E_ABM4         VOVDRV 0 VALUE { V(G0,S0)-V(VPK)    }
G_G11         0 N164635 VALUE { 1n/1p*I(E_E101)/(V(cgs)+1m) }
E_ABM103         VDSAT 0 VALUE { min(max(-V(D1,S0),V(IDRo2)),V(IDRvx))    }
.ENDS NV6113_FET
*$

.SUBCKT NV6113_DRV GDRV PWM SK VDD
.PARAM IQDDL=270u UVLOHYS=0.6V UVLOREF=3.4V NORMTEMP=25 ILSMAX=350m GMVC=0.1 GMTC=-0.001 IQDDTC=0.01 VITH=2.18V VITHTC=0.002 RDSONLS=2.5 VIHYS=0.5V IQDDH=360u VITHMIN=1.9V VITHMAX=2.8V RDSONHS=8.75 IHSMAX=100m TD=5n
X_U3         N119184 N09875 N16008 N124777 SK COMP_HYST_VAR2 PARAMS:  VHIGH=8 VLOW=1m VHYS={UVLOHYS}
C_C3         SK N119184  10p
R_R6         N119184 VDD  33k
D_D3         N124436 N119184 DBODY
R_R7         N124436 VDD  1k
C_C2         SK EN  1p
V_V2         VREFCT SK 1
D_D2         SK OUT DBODY
E_ABM2         CMULT 0 VALUE { (1+({GMVC}*(V(vdd,SK)-7)))*(1+{GMTC}*(V(VTEMP)-{NORMTEMP}))    }
G_ABMI1         VDD SK VALUE { max(tanh(max(V(VDD,SK),0))*(IQDDL+(IQDDH-IQDDL)*(1+tanh(5*V(PWM,SK)-5))/2)*(1+{IQDDTC}*(V(VTEMP)-{NORMTEMP})), 0)    }
V_V1         N09875 SK {UVLOREF}
R_R2         EN N16008  1k
R_R1         PWMC PWMCT  1.5k
R_R5         OUT GDRV  1m
G_G2         OUT SK VALUE { {ILSMAX}*tanh(1/{ILSMAX}/{RDSONLS}*V(out,SK))*0.5*(1-tanh(1.5*((V(PRE, SK)-2))))*V(CMULT) }
R_R4         SK OUT  10Meg
G_G1         VDD OUT VALUE { {IHSMAX}*tanh(1/{IHSMAX}/{RDSONHS}*(V(vdd,SK)-V(OUT,SK)))*(tanh(1.5*(V(PRE, SK)-3))+1)/2*V(CMULT) }
E_E1         N22346 SK VALUE { min(max({VITHMIN},(1+{VITHTC}*((V(VTEMP))-{NORMTEMP}))*{VITH}), {VITHMAX}) }
X_U2         PWMCT VREFCT PRE EN SK COMP_HYST_VAR2 PARAMS:  VHIGH=8 VLOW=0 VHYS=100m
X_U1         PWM N22346 PWMC N124777 SK COMP_HYST_VAR2 PARAMS:  VHIGH=2 VLOW=0 VHYS={VIHYS}
C_C1         SK PWMCT  {TD/1000}
R_R3         SK VDD  10Meg
E_ABM1         VTEMP 0 VALUE { {TEMP}    }
D_D1         OUT VDD DBODY
V_V3         N124777 SK 5
.ENDS NV6113_DRV
*$

.SUBCKT NV611x_OPA INP INM VDD OUT VSS GNDA params: R0=1e5 C0=100n Ro=10
R1 GNDA q {R0}
R2 GNDA inp 10Meg
R3 GNDA inm 10Meg
C1 q GNDA {C0}
G1 GNDA q VALUE {V(inp,GNDA)-V(inm,GNDA)}
E1 N001 GNDA VALUE {max(min(v(q,GNDA),v(vdd,GNDA)),v(vss,GNDA))}
R4 N001 out {Ro}
G2 vdd GNDA VALUE {max(V(N001,out)/{Ro},0)}
G3 GNDA vss VALUE {max(-V(N001,out)/{Ro},0)}
D1 q Vclp DBODY
D2 Vclm q DBODY
E2 Vclp GNDA VALUE {V(VDD,GNDA)}
E3 GNDA Vclm VALUE {V(GNDA,VSS)}
.ENDS NV611x_OPA
*$

.SUBCKT COMP_HYST_VAR2 NINV INV OUT VX VG params: VHIGH=5 VLOW=100m VHYS=50m
Rvx VX VG 10Meg
Ehl HiL VG Value { min(V(VX,VG),{VHIGH}) }
Ell LoL VG Value { min(V(VX,VG),{VLOW}) }
EHyst HYST NINV Value { {VHYS}/2*tanh(500*(V(OUT,VG)-(V(HiL,VG)+V(LoL,VG))/2)) }
EComp CompOut VG Value { V(LoL,VG) + (V(HiL,VG)-V(LoL,VG))*0.5*(tanh(500*V(HYST,INV))+1) }
RO CompOut OUT 100
CO OUT VG 10PF
.ENDS COMP_HYST_VAR2
*$

.model DBODY  D(Is=30n N=1 Rs=0.1)
